package com.adcc.ags.cgw;

import com.adcc.ags.cgw.configuration.AMQSFactory;
import com.adcc.ags.cgw.configuration.GWFactory;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.dropwizard.Configuration;

import javax.validation.constraints.NotNull;

/**
 * 应用配置类
 */
public class AppConfiguration extends Configuration{

    // AMQS配置工厂
    @NotNull
    private AMQSFactory amqsFactory;

    // 网关配置工厂
    @NotNull
    private GWFactory gwFactory;

    // 代理配置
    @NotNull
    private String proxy;

    @JsonProperty("amqs")
    public AMQSFactory getAmqsFactory() {
        return amqsFactory;
    }

    @JsonProperty("amqs")
    public void setAmqsFactory(AMQSFactory amqsFactory) {
        this.amqsFactory = amqsFactory;
    }

    @JsonProperty("gw")
    public GWFactory getGwFactory() {
        return gwFactory;
    }

    @JsonProperty("gw")
    public void setGwFactory(GWFactory gwFactory) {
        this.gwFactory = gwFactory;
    }

    @JsonProperty("proxy")
    public String getProxy() {
        return proxy;
    }

    @JsonProperty("proxy")
    public void setProxy(String proxy) {
        this.proxy = proxy;
    }
}
